package com.wave.system.mapper;

import com.wave.common.core.mapper.BaseMapperPlus;
import com.wave.system.domain.SysProduceRecord;
import com.wave.system.domain.vo.SysProduceRecordStatisticsVo;
import com.wave.system.domain.vo.SysProduceRecordVo;
import com.wave.system.domain.vo.SysProduceStatisticsVo;
import org.apache.ibatis.annotations.Param;

import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 生产记录Mapper接口
 *
 * @author wave
 * @date 2024-10-17
 */
public interface SysProduceRecordMapper extends BaseMapperPlus<SysProduceRecordMapper, SysProduceRecord, SysProduceRecordVo> {

    List<SysProduceStatisticsVo> selectProduceCountByClassesTime(@Param("startDate") Date startDate, @Param("endDate") Date endDate);

    int selectDailyOutputTrend(@Param("productNumber") String productNumber, @Param("startDate")Date startDate, @Param("endDate")Date endDate);

    List<SysProduceRecordStatisticsVo> selectDailyOut(@Param("startDate") LocalDateTime startDate, @Param("endDate") LocalDateTime endDate);


    List<Map<String, Object>> getSystemData();
}
